Skip to content

fix: reliable shuffle-on-swap + per-Tonie volume multiplier - #67

Open
xylonm wants to merge 1 commit into
git4sim:mainfrom
xylonm:port/v4.1.0-shuffle-volume
Open

xylonm wants to merge 1 commit into
git4sim:mainfrom
xylonm:port/v4.1.0-shuffle-volume

Conversation

@xylonm

@xylonm xylonm commented Nov 7, 2026

Copy link
Copy Markdown

Shuffle on swap:

  • Remember the last Tonie per box across the empty phase (lift A off,
    put B on); previously the swap was practically never detected.
  • Ignore stale poll placements for ICI boxes (caused wrong/double
    shuffles), persist the last placement, skip Tonies moved to another
    box, dedupe in-flight shuffles.
  • Shuffling always yields a different chapter order.

Volume multiplier (new, per Creative/Content Tonie and Disc):

  • While the Tonie is on the box, max volume and current loudness are
    raised by the factor; removing/replacing it restores the exact
    previous values.
  • Max is changed first; the level is set only after the box applied it
    (the level is relative to max and the box rescales it on max change),
    then verified and re-sent if needed.
  • Active boost state is persisted, so the undo survives restarts.

Max box/headphone volume adjustable in 1 % steps (1-100).

🤖 Generated with Claude Code

Shuffle on swap:
- Remember the last Tonie per box across the empty phase (lift A off,
  put B on); previously the swap was practically never detected.
- Ignore stale poll placements for ICI boxes (caused wrong/double
  shuffles), persist the last placement, skip Tonies moved to another
  box, dedupe in-flight shuffles.
- Shuffling always yields a different chapter order.

Volume multiplier (new, per Creative/Content Tonie and Disc):
- While the Tonie is on the box, max volume and current loudness are
  raised by the factor; removing/replacing it restores the exact
  previous values.
- Max is changed first; the level is set only after the box applied it
  (the level is relative to max and the box rescales it on max change),
  then verified and re-sent if needed.
- Active boost state is persisted, so the undo survives restarts.

Max box/headphone volume adjustable in 1 % steps (1-100).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant